<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en" xml:lang="en" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Roadmap: How to adopt the Evolutionary Architecture practice</title>
<meta name="uma.type" content="Roadmap">
<meta name="uma.name" content="how_to_adopt_evolutionary_arch_practice">
<meta name="uma.presentationName" content="How to adopt the Evolutionary Architecture practice">
<meta name="element_type" content="other">
<meta name="filetype" content="description">
<meta name="role" content="">
<link rel="StyleSheet" href="./../../../css/default.css" type="text/css">
<script src="./../../../scripts/ContentPageResource.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/ContentPageSection.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/ContentPageSubSection.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/ContentPageToolbar.js" type="text/javascript" language="JavaScript"></script><script src="./../../../scripts/contentPage.js" type="text/javascript" language="JavaScript"></script><script type="text/javascript" language="JavaScript">
					var backPath = './../../../';
					var imgPath = './../../../images/';
					var nodeInfo=null;
					contentPage.preload(imgPath, backPath, nodeInfo,  '', false, false, false);
				</script>
</head>
<body>
<div id="breadcrumbs"></div>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td valign="top"><a name="Top"></a>
<div id="page-guid" value="_Odpz8NciEdy1nJEYZGzN4A"></div>
<table border="0" cellspacing="0" cellpadding="0" width="100%">
<tr>
<td class="pageTitle" nowrap="true">Roadmap: How to adopt the Evolutionary Architecture practice</td><td width="100%">
<div align="right" id="contentPageToolbar"></div>
</td><td width="100%" class="expandCollapseLink" align="right"><a name="mainIndex" href="./../../../index.htm"></a><script language="JavaScript" type="text/javascript" src="./../../../scripts/treebrowser.js"></script></td>
</tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td class="pageTitleSeparator"><img src="./../../../images/shim.gif" alt="" title="" height="1"></td>
</tr>
</table>
<div class="overview">
<table width="97%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50"><img src="./../../../images/roadmap.gif" alt="" title=""></td><td>
<table class="overviewTable" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top">This roadmap describes how to adopt the Evolutionary Architecture practice.</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">Main Description</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td class="sectionTableSingleCell"><h3> Getting started</h3>
<p> Begin by making sure that the team and key stakeholders understand what software 
  architecture is and the value of capturing it in a separate artifact. See <a class="elementLinkWithType" href="./../../../core.tech.common.extend_supp/guidances/concepts/software_architecture_59A08DE0.html" guid="__O7tAMVvEduLYZUGfgZrkQ">Concept: Software Architecture</a>. </p>
<p> After there is agreement that the architectural information should be captured, 
  it is important to come to an agreement on what architectural information you 
  want to capture and what format it should take. Review the <a class="elementLinkWithType" href="./../../../practice.tech.evolutionary_arch.base/workproducts/architecture_notebook_9BB92433.html" guid="_0XAf0MlgEdmt3adZL5Dmdw">Artifact: Architecture Notebook</a> and associated guidance. Agree on what you 
  want to document. </p>
<p> Next, review <a class="elementLinkWithType" href="./../../../core.tech.common.extend_supp/guidances/concepts/arch_views_viewpoints_7A6CD31.html" guid="_kgtcoNc8Edyd7OybSySFxg">Concept: Architectural Views and Viewpoints</a> and <a class="elementLinkWithType" href="./../../../core.tech.common.extend_supp/guidances/concepts/arch_mechanism_2932DFB6.html" guid="_mzxI0A4LEduibvKwrGxWxA">Concept: Architectural Mechanism</a>. Both are crucial to understanding how to define 
  and communicate the architecture. </p>
<p> Now you can turn your attention to deciding, as a team, how and when 
  the architectural tasks should be performed. </p>
<ul>
    <li>
        If you are working on a new project and you are at the beginning of the lifecycle, review <a class="elementLinkWithType" href="./../../../practice.tech.evolutionary_arch.base/tasks/outline_the_arch_FF123A81.html" guid="_0f-1oMlgEdmt3adZL5Dmdw">Task: Outline the Architecture</a>.
    </li>
    
  <li> If you are working on a project that is already underway, take time to 
    document the decisions that have already been made and continue to evolve 
    the architecture as development proceeds. See <a class="elementLinkWithType" href="./../../../practice.tech.evolutionary_arch.base/tasks/refine_the_arch_7723A69E.html" guid="_0gRJgMlgEdmt3adZL5Dmdw">Task: Refine the Architecture</a>. </li>
</ul>
<h3> Common pitfalls </h3>
<p> The architect should not work in isolation and just throw an architectural 
  specification over the wall to the developers. This requires too much documentation 
  and makes it difficult for team members to understand why the architecture needs 
  to work the way it does. Building the architecture is an activity that requires 
  collaboration to be successful. </p>
<p> Avoid creating significant and detailed architectural documentation for 
  agile projects. Don't get caught up in defining exactly what the structure 
  of the Architecture Notebook should be. Focus on capturing the key decisions 
  and the rationale for these decisions. Refer to more detailed documentation 
  where necessary, and don't duplicate material. Keep the documentation clear 
  and concise. Make sure that the people who use the architecture (the development 
  team) are comfortable with the format and content of the architecture. Is there 
  more or different information that they would like to see? Would they like to 
  see less, instead? </p>
<p> Document important decisions. Team members may be close by and you may be 
  in constant contact with them, but teams change and software architects move 
  on to other projects. Failure to document important decisions raises the risk 
  of failure later because future team members won't have the benefit of being 
  involved in today's collaborative decisions. Consider future team members as 
  collaborators that you simply don't have the opportunity to speak to face-to-face. 
</p></td>
</tr>
</table>
</div>
<div class="sectionHeading">More Information</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<th class="sectionTableHeading" scope="row">Concepts</th><td class="sectionTableCell">
<ul>
<li>
<a href="./../../../core.tech.common.extend_supp/guidances/concepts/software_architecture_59A08DE0.html" guid="__O7tAMVvEduLYZUGfgZrkQ">Software Architecture</a>
</li>
</ul>
</td>
</tr>
</table>
</div>
<table class="copyright" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="copyright"><p> This program and the accompanying materials are made available under the<br />
  <a href="http://www.eclipse.org/org/documents/epl-v10.php" target="_blank">Eclipse 
  Public License V1.0</a>, which accompanies this distribution. </p><p/><p> <a class="elementLink" href="./../../../core.default.release_copyright.base/guidances/supportingmaterials/openup_copyright_C3031062.html" guid="_UaGfECcTEduSX6N2jUafGA">OpenUP Copyright</a></p></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
<script type="text/javascript" language="JavaScript">
				contentPage.onload();
			</script>
</html>
